//正则表达式验证

/* 是否手机号码 */
function validatePhone(rule, value, callback) {
    const reg = /^[1](([3][0-9])|([4][0,1,4-9])|([5][0-3,5-9])|([6][2,5,6,7])|([7][0-8])|([8][0-9])|([9][0-3,5-9]))[0-9]{8}$/;
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if ((!reg.test(value)) && value != '') {
            callback(new Error('请输入正确的手机号码'))
        } else {
            callback()
        }
    }
}

/* 是否邮箱 */
function validateEMail(rule, value, callback) {
   
    const reg = /^([a-zA-Z0-9]+[-_\.]?)+@[a-zA-Z0-9]+\.[a-z]+$/
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if (!reg.test(value)) {
            callback(new Error('请输入正确的邮箱地址'))
        } else {
            callback()
        }
    }
}

// 验证密码
function validatePassword(rule, value, callback) {
    const reg = /^([A-Z]|[a-z]|[0-9]|[`~!@#$%^&*()+=|{}':;',\\\\[\\\\].<>\/?~！@#￥%……&*（）――+|{}【】‘；：”“'。，、？]){6,20}$/
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if (!reg.test(value)) {
            callback(new Error('请输入6-20位的密码'))
        } else {
            callback()
        }
    }
}

// 验证身份证号
function validateIdCard(rule, value, callback) {
    var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if (!reg.test(value)) {
            callback(new Error('请输入正确的身份证号'))
        } else {
            callback()
        }
    }
}



// 是否是固定号码
function validateFixPhone(rule, value, callback) {
    const reg = /^([0-9]{3,4}-)?[0-9]{7,8}$/
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if (!reg.test(value)) {
            callback(new Error('请输入正确的固定电话'))
        } else {
            callback()
        }
    }
}




//验证两位小数
function validateTwoFloat(rule, value, callback) {
    const reg = /^(\d+|\d+\.\d{1,2})$/
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if (!reg.test(value)) {
            callback(new Error('请输入正确两位小数'))
        } else {
            callback()
        }
    }
}

//验证整数
function validateZhengshu(rule, value, callback) {
    const reg = /^[1-9]\d*$/
    if (value == '' || value == undefined || value == null) {
        callback()
    } else {
        if (!reg.test(value)) {
            callback(new Error('请输入正整数'))
        } else {
            callback()
        }
    }
}

export {validateEMail,validatePhone}
